package cn.iocoder.yudao.module.jky.dal.mysql.goodsattributevalue;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.jky.dal.dataobject.goodsattributevalue.GoodsAttributeValueDO;
import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.jky.controller.admin.goodsattributevalue.vo.*;

/**
 * 商品属性值 Mapper
 *
 * @author 超级管理员
 */
@Mapper
public interface GoodsAttributeValueMapper extends BaseMapperX<GoodsAttributeValueDO> {

    default PageResult<GoodsAttributeValueDO> selectPage(GoodsAttributeValuePageReqVO reqVO) {
        return selectPage(reqVO, new LambdaQueryWrapperX<GoodsAttributeValueDO>()
                .eqIfPresent(GoodsAttributeValueDO::getGoodsAttributeId, reqVO.getGoodsAttributeId())
                .likeIfPresent(GoodsAttributeValueDO::getName, reqVO.getName())
                .eqIfPresent(GoodsAttributeValueDO::getImg, reqVO.getImg())
                .eqIfPresent(GoodsAttributeValueDO::getSort, reqVO.getSort())
                .eqIfPresent(GoodsAttributeValueDO::getIsShow, reqVO.getIsShow())
                .orderByDesc(GoodsAttributeValueDO::getGoodsAttributeValueId));
    }

    default List<GoodsAttributeValueDO> selectList(GoodsAttributeValueExportReqVO reqVO) {
        return selectList(new LambdaQueryWrapperX<GoodsAttributeValueDO>()
                .eqIfPresent(GoodsAttributeValueDO::getGoodsAttributeId, reqVO.getGoodsAttributeId())
                .likeIfPresent(GoodsAttributeValueDO::getName, reqVO.getName())
                .eqIfPresent(GoodsAttributeValueDO::getImg, reqVO.getImg())
                .eqIfPresent(GoodsAttributeValueDO::getSort, reqVO.getSort())
                .eqIfPresent(GoodsAttributeValueDO::getIsShow, reqVO.getIsShow())
                .orderByDesc(GoodsAttributeValueDO::getGoodsAttributeValueId));
    }

}
